package com.shengdacar.sharelibrary.qq;
import android.content.Context;
import android.util.Log;
import com.tencent.tauth.Tencent;

/**
 * 作者：huyi
 * 日期：2020/12/17 10:08
 * 描述：
 */
public class QqApiGlobal {
    private final static String TAG = QqApiGlobal.class.getName();
    private Tencent mTencent;
    /**
     * 单例模式
     **/
    private static QqApiGlobal mWxApiGlobal = null;

    /**
     * 构造函数私有化
     **/
    private QqApiGlobal() {
    }

    /**
     * 公有的静态函数，对外暴露获取单例对象的接口
     **/
    public static QqApiGlobal getInstance() {
        if (mWxApiGlobal == null) {
            synchronized (QqApiGlobal.class) {
                if (mWxApiGlobal == null) {
                    mWxApiGlobal = new QqApiGlobal();
                }
            }
        }
        return mWxApiGlobal;
    }



    public void init(Context context, String appId) {
        init(context, appId, context.getPackageName() + ".wechatShare");
    }

    public void init(Context context, String appId, String authorities) {
        mTencent = Tencent.createInstance(appId, context, authorities);
    }


    /**
     *
     * @return 获取 mTencent
     */
    public Tencent getmTencent() {
        check();
        return mTencent;
    }

    /**
     * 检查 mTencent 是否已注册，未注册则抛出空指针异常
     */
    private void check(){
        if (mTencent == null) {
            Log.e(TAG, "请先使用QqApiGlobal.getInstance().init() 方法初始化");
            throw new NullPointerException("请先使用QqApiGlobal.getInstance().init() 方法初始化");
        }
    }
}
